Backwards Abstract Interpretation of Probabilistic Programs
نویسنده
چکیده
In industrial contexts, safety regulations often mandate upper bounds on the probabilities of failure. Now that embedded computers are part of many industrial environments, it is often needed to analyze programs with non-deterministic and probabilistic behavior. We propose a general abstract interpretation based method for the static analysis of programs using random generators or random inputs. Our method also allows “ordinary” non-deterministic inputs, not necessarily following a random distribution.
منابع مشابه
Automatic Probabilistic Program Verification through Random Variable Abstraction
The weakest pre-expectation calculus [20] has been proved to be a mature theory to analyze quantitative properties of probabilistic and nondeterministic programs. We present an automatic method for proving quantitative linear properties on any denumerable state space using iterative backwards fixed point calculation in the general framework of abstract interpretation. In order to accomplish thi...
متن کاملA Program Transformation for Backwards Analysis of Logic Programs
The input to backwards analysis is a program together with properties that are required to hold at given program points. The purpose of the analysis is to derive initial goals or pre-conditions that guarantee that, when the program is executed, the given properties hold. The solution for logic programs presented here is based on a transformation of the input program, which makes explicit the de...
متن کاملAnalysing Logic Programs by Reasoning Backwards
One recent advance in program development has been the application of abstract interpretation to verify the partial correctness of a (constraint) logic program. Traditionally forwards analysis has been applied that starts with an initial goal and traces the execution in the direction of the control-flow to approximate the program state at each program point. This is often enough to verify asser...
متن کاملAn Abstract Analysis of the Probabilistic Termination of Programs
It is often useful to introduce probabilistic behavior in programs, either because of the use of internal random generators (probabilistic algorithms), either because of some external devices (networks, physical sensors) with known statistics of behavior. Previous works on probabilistic abstract interpretation have addressed safety properties, but somehow neglected probabilistic termination. In...
متن کاملRunning Probabilistic Programs Backwards
Many probabilistic programming languages allow programs to be run under constraints in order to carry out Bayesian inference. Running programs under constraints could enable other uses such as rare event simulation and probabilistic verification—except that all such probabilistic languages are necessarily limited because they are defined or implemented in terms of an impoverished theory of prob...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
دوره شماره
صفحات -
تاریخ انتشار 2001